//package cn.xspace.module.other.view.adapter;
//
//import android.content.Context;
//import android.content.DialogInterface;
//import android.graphics.Color;
//import android.support.v7.app.AlertDialog;
//import android.text.TextUtils;
//import android.view.LayoutInflater;
//import android.view.View;
//import android.view.View.OnClickListener;
//import android.view.ViewGroup;
//import android.view.WindowManager;
//import android.widget.BaseExpandableListAdapter;
//import android.widget.EditText;
//import android.widget.ImageView;
//import android.widget.PopupWindow;
//import android.widget.TextView;
//import android.widget.Toast;
//
//import java.util.List;
//import java.util.Map;
//
//import cn.xspace.module.other.activity.ManagerFavoritorWeb;
//import cn.xspace.module.other.bean.FavoriteFolderBean;
//import cn.xspace.module.other.util.RProxy;
//
//public class ManagerFavoriteAdapter extends BaseExpandableListAdapter {
//    Context context;
//    List<FavoriteFolderBean> parentlist;
//    Map<String, List<FavoriteFolderBean>> childrenlist;
//    ManagerFavoritorWeb act;
//
//    public ManagerFavoriteAdapter(Context context,
//                                  List<FavoriteFolderBean> parentlist,
//                                  Map<String, List<FavoriteFolderBean>> childrenlist,
//                                  ManagerFavoritorWeb act) {
//        super();
//        this.context = context;
//        this.parentlist = parentlist;
//        this.childrenlist = childrenlist;
//        this.act = act;
//    }
//
//    @Override
//    public Object getChild(int arg0, int arg1) {
//        return childrenlist.get(getGroupIdStr(arg0)).get(arg1);
//    }
//
//    @Override
//    public long getChildId(int arg0, int arg1) {
//        return 0;
//    }
//
//    @Override
//    public View getChildView(int groupPosition, int childPosition,
//                             boolean isLastChild, View convertView, ViewGroup parent) {
//        final FavoriteFolderBean fwb = (FavoriteFolderBean) getChild(
//                groupPosition, childPosition);
//        //Log.i("folder", "getChildView fwb:" + fwb.getFolderName());
//        final int pos = groupPosition;
//        if (convertView == null) {
//            convertView = LayoutInflater.from(context).inflate(
//                    RProxy.manager_favoritor_web_item1, null);
//        }
//        TextView tv_collect = (TextView) convertView
//                .findViewById(RProxy.manager_favorite_collection_item);
//        TextView tv_delete = (TextView) convertView
//                .findViewById(RProxy.manager_favorite_delete_item);
//        ImageView img = (ImageView) convertView
//                .findViewById(RProxy.manager_favorite_title_ico);
//        TextView tv_title = (TextView) convertView
//                .findViewById(RProxy.manager_favorite_title_name);
//        TextView tv_more = (TextView) convertView
//                .findViewById(RProxy.manager_favorite_more);
//        tv_collect.setVisibility(View.GONE);
//        if (fwb.isIslastone()) {
//            //tv_collect.setVisibility(View.GONE);
//            tv_delete.setVisibility(View.GONE);
//            tv_more.setVisibility(View.GONE);
//            img.setImageResource(RProxy.web_collect_add);
//            tv_title.setText("新建目录");
//            tv_title.setTextColor(Color.parseColor("#03a87f"));
//        } else {
//            img.setImageResource(RProxy.web_collect_parent_ico);
//            if (act.getMode() == 0) {
//                tv_collect.setVisibility(View.VISIBLE);
//            }
//            tv_delete.setVisibility(View.VISIBLE);
//            tv_more.setVisibility(View.VISIBLE);
//            tv_title.setTextColor(Color.parseColor("#999999"));
//            tv_title.setText(fwb.getFolderName());
//        }
//
//        tv_title.setOnClickListener(new OnClickListener() {
//
//            @Override
//            public void onClick(View arg0) {
//                if (fwb.isIslastone()) {
//                    FavoriteFolderBean fwb = (FavoriteFolderBean) getGroup(pos);
//                    showCreateFolderDialog1(fwb.getFolderId() + "");
//                }
//            }
//        });
//
//        // 删除
//        tv_delete.setOnClickListener(new OnClickListener() {
//
//            @Override
//            public void onClick(View arg0) {
//                showDeleteDialog(fwb.getFolderId() + "");
//            }
//        });
//
//        // 更多
//        tv_more.setOnClickListener(new OnClickListener() {
//
//            @Override
//            public void onClick(View arg0) {
//                showPopUp(arg0, false, fwb.getFolderId() + "");
//            }
//        });
//        tv_collect.setOnClickListener(new OnClickListener() {
//
//            @Override
//            public void onClick(View arg0) {
//                act.favoriteWebPage(fwb.getFolderId() + "");
//
//            }
//        });
//
//        return convertView;
//    }
//
//    @Override
//    public int getChildrenCount(int arg0) {
//
//        String key = getGroupIdStr(arg0);
//        List<FavoriteFolderBean> tl = childrenlist.get(key);
//        if (tl != null) {
//            return tl.size();
//        }
//        return 0;
//    }
//
//    @Override
//    public Object getGroup(int arg0) {
//        return parentlist.get(arg0);
//    }
//
//    @Override
//    public int getGroupCount() {
//        return parentlist.size();
//    }
//
//    @Override
//    public long getGroupId(int arg0) {
//        // FavoriteFolderBean fwb = (FavoriteFolderBean) getGroup(arg0);
//        return arg0;
//    }
//
//    public String getGroupIdStr(int arg0) {
//        FavoriteFolderBean fwb = (FavoriteFolderBean) getGroup(arg0);
//        return fwb.getFolderId();
//    }
//
//    @Override
//    public View getGroupView(int groupPosition, boolean isExpanded, View arg2,
//                             ViewGroup parent) {
//        final FavoriteFolderBean fwb = (FavoriteFolderBean) getGroup(groupPosition);
//        final int pos = groupPosition;
//        if (arg2 == null) {
//            arg2 = LayoutInflater.from(context).inflate(
//                    RProxy.manager_favoritor_web_item, null);
//        }
//        ImageView img = (ImageView) arg2
//                .findViewById(RProxy.manager_favorite_title_ico);
//        TextView tv_collect = (TextView) arg2
//                .findViewById(RProxy.manager_favorite_collection_item);
//        TextView tv_add = (TextView) arg2
//                .findViewById(RProxy.manager_favorite_new_folder);
//        TextView tv_title = (TextView) arg2
//                .findViewById(RProxy.manager_favorite_title_name);
//        TextView tv_more = (TextView) arg2
//                .findViewById(RProxy.manager_favorite_more);
//        tv_collect.setVisibility(View.GONE);
//        tv_add.setVisibility(View.GONE);
//        tv_more.setVisibility(View.GONE);
//        tv_title.setText(fwb.getFolderName());
//        if (getChildrenCount(groupPosition) == 0) {
//            if (fwb.isIslastone()) {
//                img.setImageResource(RProxy.web_collect_add);
//                tv_title.setText("新建一级目录");
//            } else {
//                if (act.getMode() == 0) {
//                    tv_collect.setVisibility(View.VISIBLE);
//                }
//                tv_add.setVisibility(View.VISIBLE);
//                tv_more.setVisibility(View.VISIBLE);
//                img.setImageResource(RProxy.web_collect_parent_ico);
//
//                tv_collect.setOnClickListener(new OnClickListener() {
//
//                    @Override
//                    public void onClick(View arg0) {
//                        act.favoriteWebPage(fwb.getFolderId());
//                    }
//                });
//            }
//        } else {
//            if (!isExpanded) {
//                img.setImageResource(RProxy.web_collect__expand);
//                if (act.getMode() == 0) {
//                    tv_collect.setVisibility(View.VISIBLE);
//                }
//                tv_add.setVisibility(View.VISIBLE);
//                tv_more.setVisibility(View.VISIBLE);
//            } else {
//                img.setImageResource(RProxy.web_collect__collapse);
//            }
//
//        }
//        tv_title.setOnClickListener(new OnClickListener() {
//
//            @Override
//            public void onClick(View arg0) {
//                if (getChildrenCount(pos) == 0 && fwb.isIslastone()) {
//                    showCreateFolderDialog1(null);
//                }
//            }
//        });
//        tv_add.setOnClickListener(new OnClickListener() {
//
//            @Override
//            public void onClick(View arg0) {
//                showCreateFolderDialog1(fwb.getFolderId());
//            }
//        });
//        // 更多
//        tv_more.setOnClickListener(new OnClickListener() {
//
//            @Override
//            public void onClick(View arg0) {
//                showPopUp(arg0, true, fwb.getFolderId() + "");
//            }
//        });
//        return arg2;
//    }
//
//    @Override
//    public boolean hasStableIds() {
//        return false;
//    }
//
//    @Override
//    public boolean isChildSelectable(int arg0, int arg1) {
//        return false;
//    }
//
//    private void showCreateFolderDialog1(final String parentid) {
//        final EditText editText = new EditText(context);
//        new AlertDialog.Builder(context).setTitle("请输入新建文件夹名")
//                .setIcon(android.R.drawable.ic_dialog_info).setView(editText)
//                .setPositiveButton("确定", new DialogInterface.OnClickListener() {
//
//                    public void onClick(DialogInterface dialog, int which) {
//                        act.CreateFolder(editText.getText().toString(),
//                                parentid);
//                    }
//                }).setNegativeButton("取消", null).show();
//
//    }
//
//    private void showRenameFolderDialog1(final String folderid) {
//        final EditText editText = new EditText(context);
//        new AlertDialog.Builder(context).setTitle("请输入新文件夹名")
//                .setIcon(android.R.drawable.ic_dialog_info).setView(editText)
//                .setPositiveButton("确定", new DialogInterface.OnClickListener() {
//
//                    public void onClick(DialogInterface dialog, int which) {
//                        String name = editText.getText().toString();
//                        if (!TextUtils.isEmpty(name)) {
//                            act.modifyFolderName(folderid, name);
//                        } else {
//                            Toast.makeText(context, "名称不可为空",
//                                    Toast.LENGTH_SHORT).show();
//                        }
//                    }
//                }).setNegativeButton("取消", null).show();
//
//    }
//
//    private void showDeleteDialog(final String folder_id) {
//        new AlertDialog.Builder(context).setTitle("提示")
//                .setMessage("确定要删除此文件夹吗?")
//
//                .setPositiveButton("确定", new DialogInterface.OnClickListener() {
//
//                    public void onClick(DialogInterface dialog, int which) {
//                        act.DeleteFolder(folder_id);
//                    }
//                }).setNegativeButton("取消", null).show();
//
//    }
//
//    PopupWindow popup = null;
//
//    private void showPopUp(View v, boolean isdelete, final String fold_id) {
//        WindowManager wm = (WindowManager) context
//                .getSystemService(Context.WINDOW_SERVICE);
//        int width = wm.getDefaultDisplay().getWidth();
//        View view = LayoutInflater.from(context).inflate(
//                RProxy.manage_favorite_folder_popup, null);
//        TextView tv_delete = (TextView) view
//                .findViewById(RProxy.manager_favorite_delete_item);
//        TextView tv_rename = (TextView) view
//                .findViewById(RProxy.manager_favorite_folder_rename);
//        popup = new PopupWindow(context);
//        popup.setContentView(view);
//        popup.setWidth(width - 30);
//        popup.setHeight(100);
//        popup.setOutsideTouchable(true);
//        if (!isdelete) {
//            tv_delete.setVisibility(View.GONE);
//        }
//        tv_delete.setOnClickListener(new OnClickListener() {
//
//            @Override
//            public void onClick(View arg0) {
//                popup.dismiss();
//                showDeleteDialog(fold_id);
//
//            }
//        });
//        tv_rename.setOnClickListener(new OnClickListener() {
//
//            @Override
//            public void onClick(View arg0) {
//                popup.dismiss();
//                showRenameFolderDialog1(fold_id);
//
//            }
//        });
//        popup.showAsDropDown(v);
//
//    }
//}
